/**
 * Created by sunchenglin on 2017/7/17.
 *矩形覆盖
 //    第一种是最后是由一个2*(n-1)的矩形加上一个竖着的2*1的矩形
 　　另一种是由一个2*(n-2)的矩形，加上两个横着的2*1的矩形
 　　因此我们可以得出，
 　　第2*n个矩形的覆盖方法等于第2*(n-1)加上第2*(n-2)的方法。使用代码可以表示为：

 */
public class Solution {
    public static int StrToInt(String str) {
        if(str ==null || str.length()<=0){
            return 0;
        }
        char first = str.charAt(0);
        if(first == '+')
            return parse(str,1,true);
        else if(first == '-')
            return parse(str,1,false);
        else if ('0'<=first && first <='9')
            return parse(str,0,true);
        else
            return 0;
//            throw new NumberFormatException(str) ;
    }
    public static int parse(String str, int index, boolean flag){
        long temp=0;
        while(index <str.length()){
            if('0'> str.charAt(index) || str.charAt(index)>'9')
                return 0;
//                throw  new NumberFormatException(str);
            temp=temp*10 + str.charAt(index)-'0';
            if(temp-1>Integer.MAX_VALUE){
                return 0;
//                throw new NumberFormatException(str);
            }
            index++;
        }
        if(flag)
            if(temp<=Integer.MAX_VALUE)
                return (int)temp;
            else
                return 0;
        else
            return -(int)temp;

//                throw  new NumberFormatException(str);
    }
    public static void main(String args[]){

//        String a = "";
//        String a1 = null;
//        String a2 = "+123";
        String a3 = "-123";
//        String a4 = "a12a";
//        String a5 = "+sas";
//        String a6 = String.valueOf(Integer.MAX_VALUE);
//        String a7 = String.valueOf(Integer.MIN_VALUE);
//        int b = StrToInt(a);
//        int b1 = StrToInt(a1);
//        int b2 = StrToInt(a2);
//        int b3 = StrToInt(a3);
//        int b4 = StrToInt(a4);
//        int b5 = StrToInt(a5);
//        int b6 = StrToInt(a6);
//        int b7 = StrToInt(a7);

 int b8 = StrToInt("-2147483648");
        System.out.println(Integer.MAX_VALUE);
    }
}
